<?php
/**
 * contient les fonctions nécéssaires pour la gestion du panier
 * - ajouterFilm
 * - voirPanier
 * - supprimerFilm
 * - passerCommande
 */
class Cpanier {
	/**
	 * permet d'ajouter un film au panier
	 * @param $film : ID du film à ajouter
	 */
	public function ajouterFilm($film){
		include_once ('modeles/Utilitaire.php');
		$panier = array();
		//recupere le nombre maximum de film autorisés dans le fichier conf.ini
		$nb_films_autorise = Utilitaire::configuration('nb_film_panier');
		//test si un panier existe deja
		if (isset($_SESSION['panier'])){
			$panier = $_SESSION['panier'];
		}
		//teste si un film est déja dans le panier
		if (in_array($film, $panier)){
			echo "<fieldset>Ce film est déjà dans le panier</fieldset>";
			Cpanier::voirPanier();
		} else {
			$nb_film = count($panier);
			if ($nb_film < $nb_films_autorise){
				$panier[$nb_film] = $film;
				$_SESSION['panier'] = $panier;
				echo 'Félicitation !!! Votre film a été ajouté au panier. <br/>';
				echo '<span style="font-size:9px;"> Pour voir votre panier ou passer commande cliquez sur "mon panier" dans la barre du menu.</span><br/><br/> ';
				echo 'Votre panier contient désormais les films suivants : ';
				Cpanier::voirPanier();
				//affichage du contenu de session
				//var_dump($_SESSION['panier']);
			} else {
				echo "<fieldset>désolé votre panier plein.</fieldset><br/>";
				Cpanier::voirPanier();
			}
		}
	}
	
	/**
	 * permet de lister les films présents dans le panier
	 */
	public function voirPanier(){
		include_once ('modeles/ListeFilms.php');
		$panier = $_SESSION['panier'];
		if (($panier == 0) || (!isset($_SESSION['panier'])) || ($panier==NULL)){
			echo "<fieldset>Votre panier est vide</fieldset>";	
		} else {
			for ($i=0; $i<count($panier);$i++){
				$Vfilm = array();
				$Vfilm = ListeFilms::parId($panier[$i]);
				echo '<fieldset><form method="post" action="index.php">';
				echo $i+1 ." : ". $Vfilm[0]['titre'].' ';
				echo '<input type="hidden" name="filmASupprimer" value="'.$panier[$i].'" />';
				echo '<input type="submit" name="boutonSupprFilm" value="supprimer" />';
				echo '</form></fieldset>';
			}
			echo '<form method="post" action="index.php">';
			echo '<input type="submit" value="commander" name="btn_commande">';
			echo '</form>';
		}
	}
	
	/**
	 * permet de supprimer un film du panier
	 */
	public function supprimerFilm($film){
		$panier = $_SESSION['panier'];
		
			for ($i=0; $i<count($panier);$i++){
				if ($panier[$i] == $film){
					//suppression de la cellule du tableau concernée
					unset($panier[$i]);
					echo "le film à été supprimé<br/><br/>";
				}
			}
		//rangement des cellules du tableau pour éviter toute case perdue
		$panier = array_values($panier); 
		
		
		//test si le panier est vide
		if (count($panier) == 0){
			$_SESSION['panier'] = $panier;
			echo "<fieldset>Votre panier est vide</fieldset>";
		} else { //affichage du panier
			$_SESSION['panier'] = $panier;
			echo "voici vos films : <br/>";
			Cpanier::voirPanier();
		}
	}
	
	/**
	 * permet de passer la commande des items choisis dans le panier
	 */
	public function passerCommande(){
		include ('modeles/commande.php');
		$comm = new Commande();
		
		$idFilms = $_SESSION['panier'];
		$idClient = $_SESSION['idClient'];
		$dateEmprunt = date("Y-m-d");
		$dateInc = strtotime("+1 month", strtotime($dateEmprunt));
		$dateRetour = date("Y-m-d",$dateInc);
		
		for ($i=0; $i<count($idFilms);$i++){
			$comm::creerCommande($idFilms[$i], $idClient, $dateEmprunt, $dateRetour);
		}
		unset($_SESSION['panier']);
	}
}
?>